import Vue from 'vue'
import VueRouter from 'vue-router'
import LayoutIndex from '@/layout'

Vue.use(VueRouter)

const routes = [
  {
    path: '/',
    component: LayoutIndex,
    redirect: '/21cesium',
    name: '21cesiumPostProcessStage',
    meta: { title: '21cesiumPostProcessStage', icon: 'el-icon-s-help' },
    children: [
      {
        path: '/21cesium',
        name: '02PostProcessStageBloom',
        component: () => import('@/views/21cesium后置渲染PostProcessStage/02PostProcessStageBloom.vue'),
        meta: { title: '02PostProcessStageBloom', icon: 'el-icon-s-help' }
      },
      {
        path: '/21cesium01',
        name: '01PostProcessStageAmbientOcclusion',
        component: () => import('@/views/21cesium后置渲染PostProcessStage/01PostProcessStageAmbientOcclusion.vue'),
        meta: { title: '01PostProcessStageAmbientOcclusion', icon: 'el-icon-s-help' }
      }
    ]
  },
  {
    path: '/abc20',
    component: LayoutIndex,
    redirect: '/20cesium',
    name: '20cesiumParticleSystem',
    meta: { title: '20cesiumParticleSystem', icon: 'el-icon-s-help' },
    children: [
      {
        path: '/20cesium',
        name: '00-my-plane-car',
        component: () => import('@/views/20cesium粒子系统ParticleSystem/00-my-plane-car.vue'),
        meta: { title: '00-my-plane-car', icon: 'el-icon-s-help' }
      },
      {
        path: '/20cesium04',
        name: '04ParticleSystemFire',
        component: () => import('@/views/20cesium粒子系统ParticleSystem/04ParticleSystemFire.vue'),
        meta: { title: '04ParticleSystemFire', icon: 'el-icon-s-help' }
      },
      {
        path: '/20cesium03',
        name: '03ParticleSystemSmoke',
        component: () => import('@/views/20cesium粒子系统ParticleSystem/03ParticleSystemSmoke.vue'),
        meta: { title: '03ParticleSystemSmoke', icon: 'el-icon-s-help' }
      },
      {
        path: '/20cesium02',
        name: '02ParticleSystemSnow',
        component: () => import('@/views/20cesium粒子系统ParticleSystem/02ParticleSystemSnow.vue'),
        meta: { title: '02ParticleSystemSnow', icon: 'el-icon-s-help' }
      },
      {
        path: '/20cesium01',
        name: '01ParticleSystemRain',
        component: () => import('@/views/20cesium粒子系统ParticleSystem/01ParticleSystemRain.vue'),
        meta: { title: '01ParticleSystemRain', icon: 'el-icon-s-help' }
      }
    ]
  },
  {
    path: '/abc19',
    component: LayoutIndex,
    redirect: '/19cesium',
    name: '19cesiumCamera',
    meta: { title: '19cesiumCamera', icon: 'el-icon-s-help' },
    children: [
      {
        path: '/19cesium',
        name: '14CameraEvent',
        component: () => import('@/views/19cesium相机camera/14CameraEvent.vue'),
        meta: { title: '14CameraEvent', icon: 'el-icon-s-help' }
      },
      {
        path: '/19cesium13',
        name: '13CameraSetView',
        component: () => import('@/views/19cesium相机camera/13CameraSetView.vue'),
        meta: { title: '13CameraSetView', icon: 'el-icon-s-help' }
      },
      {
        path: '/19cesium12',
        name: '12CameraRotate',
        component: () => import('@/views/19cesium相机camera/12CameraRotate.vue'),
        meta: { title: '12CameraRotate', icon: 'el-icon-s-help' }
      },
      {
        path: '/19cesium11',
        name: '11CameraTwist',
        component: () => import('@/views/19cesium相机camera/11CameraTwist.vue'),
        meta: { title: '11CameraTwist', icon: 'el-icon-s-help' }
      },
      {
        path: '/19cesium10',
        name: '10CameraLook',
        component: () => import('@/views/19cesium相机camera/10CameraLook.vue'),
        meta: { title: '10CameraLook', icon: 'el-icon-s-help' }
      },
      {
        path: '/19cesium09',
        name: '09CameraZoom',
        component: () => import('@/views/19cesium相机camera/09CameraZoom.vue'),
        meta: { title: '09CameraZoom', icon: 'el-icon-s-help' }
      },
      {
        path: '/19cesium08',
        name: '08CameraMove',
        component: () => import('@/views/19cesium相机camera/08CameraMove.vue'),
        meta: { title: '08CameraMove', icon: 'el-icon-s-help' }
      },
      {
        path: '/19cesium07',
        name: '07CameraFlyToBoundingSphere',
        component: () => import('@/views/19cesium相机camera/07CameraFlyToBoundingSphere.vue'),
        meta: { title: '07CameraFlyToBoundingSphere', icon: 'el-icon-s-help' }
      },
      {
        path: '/19cesium06',
        name: '06CameraFlyTo',
        component: () => import('@/views/19cesium相机camera/06CameraFlyTo.vue'),
        meta: { title: '06CameraFlyTo', icon: 'el-icon-s-help' }
      },
      {
        path: '/19cesium05',
        name: '05CameraFlyHome',
        component: () => import('@/views/19cesium相机camera/05CameraFlyHome.vue'),
        meta: { title: '05CameraFlyHome', icon: 'el-icon-s-help' }
      },
      {
        path: '/19cesium04',
        name: '04CameraMethod',
        component: () => import('@/views/19cesium相机camera/04CameraMethod.vue'),
        meta: { title: '04CameraMethod', icon: 'el-icon-s-help' }
      },
      {
        path: '/19cesium03',
        name: '03CameraProperty',
        component: () => import('@/views/19cesium相机camera/03CameraProperty.vue'),
        meta: { title: '03CameraProperty', icon: 'el-icon-s-help' }
      },
      {
        path: '/19cesium02',
        name: '02HeadingPitchRange',
        component: () => import('@/views/19cesium相机camera/02HeadingPitchRange.vue'),
        meta: { title: '02HeadingPitchRange', icon: 'el-icon-s-help' }
      },
      {
        path: '/19cesium01',
        name: '01HeadingPitchRoll',
        component: () => import('@/views/19cesium相机camera/01HeadingPitchRoll.vue'),
        meta: { title: '01HeadingPitchRoll', icon: 'el-icon-s-help' }
      }
    ]
  },
  {
    path: '/abc18',
    component: LayoutIndex,
    redirect: '/18cesium',
    name: '18cesiumScene',
    meta: { title: '18cesiumScene', icon: 'el-icon-s-help' },
    children: [
      {
        path: '/18cesium',
        name: '09SceneUpdateEvent',
        component: () => import('@/views/18cesium场景scene/09SceneUpdateEvent.vue'),
        meta: { title: '09SceneUpdateEvent', icon: 'el-icon-s-help' }
      },
      {
        path: '/18cesium08',
        name: '08SceneRenderEvent',
        component: () => import('@/views/18cesium场景scene/08SceneRenderEvent.vue'),
        meta: { title: '08SceneRenderEvent', icon: 'el-icon-s-help' }
      },
      {
        path: '/18cesium07',
        name: '07SceneMorphEvent',
        component: () => import('@/views/18cesium场景scene/07SceneMorphEvent.vue'),
        meta: { title: '07SceneMorphEvent', icon: 'el-icon-s-help' }
      },
      {
        path: '/18cesium06',
        name: '06SampleTerrainMostDetailed',
        component: () => import('@/views/18cesium场景scene/06SampleTerrainMostDetailed.vue'),
        meta: { title: '06SampleTerrainMostDetailed', icon: 'el-icon-s-help' }
      },
      {
        path: '/18cesium05',
        name: '05SceneSampleHeight',
        component: () => import('@/views/18cesium场景scene/05SceneSampleHeight.vue'),
        meta: { title: '05SceneSampleHeight', icon: 'el-icon-s-help' }
      },
      {
        path: '/18cesium04',
        name: '04SceneClampToHeight',
        component: () => import('@/views/18cesium场景scene/04SceneClampToHeight.vue'),
        meta: { title: '04SceneClampToHeight', icon: 'el-icon-s-help' }
      },
      {
        path: '/18cesium03',
        name: '03SceneMorphTo',
        component: () => import('@/views/18cesium场景scene/03SceneMorphTo.vue'),
        meta: { title: '03SceneMorphTo', icon: 'el-icon-s-help' }
      },
      {
        path: '/18cesium02',
        name: '02SceneCartesianToCanvasCoordinates',
        component: () => import('@/views/18cesium场景scene/02SceneCartesianToCanvasCoordinates.vue'),
        meta: { title: '02SceneCartesianToCanvasCoordinates', icon: 'el-icon-s-help' }
      },
      {
        path: '/18cesium01',
        name: '01SceneProperty',
        component: () => import('@/views/18cesium场景scene/01SceneProperty.vue'),
        meta: { title: '01SceneProperty', icon: 'el-icon-s-help' }
      }
    ]
  },
  {
    path: '/abc17',
    component: LayoutIndex,
    redirect: '/17cesium',
    name: '17SampledProperty',
    meta: { title: '17SampledProperty', icon: 'el-icon-s-help' },
    children: [
      {
        path: '/17cesium',
        name: '12VelocityVectorProperty',
        component: () => import('@/views/17cesium属性Property/12VelocityVectorProperty.vue'),
        meta: { title: '12VelocityVectorProperty', icon: 'el-icon-s-help' }
      },
      {
        path: '/17cesium11',
        name: '11PropertyBag',
        component: () => import('@/views/17cesium属性Property/11PropertyBag.vue'),
        meta: { title: '11PropertyBag', icon: 'el-icon-s-help' }
      },
      {
        path: '/17cesium10',
        name: '10ReferenceProperty',
        component: () => import('@/views/17cesium属性Property/10ReferenceProperty.vue'),
        meta: { title: '10ReferenceProperty', icon: 'el-icon-s-help' }
      },
      {
        path: '/17cesium09',
        name: '09CallbackProperty',
        component: () => import('@/views/17cesium属性Property/09CallbackProperty.vue'),
        meta: { title: '09CallbackProperty', icon: 'el-icon-s-help' }
      },
      {
        path: '/17cesium08',
        name: '08CallbackProperty',
        component: () => import('@/views/17cesium属性Property/08CallbackProperty.vue'),
        meta: { title: '08CallbackProperty', icon: 'el-icon-s-help' }
      },
      {
        path: '/17cesium07',
        name: '07ColorMaterialProperty',
        component: () => import('@/views/17cesium属性Property/07ColorMaterialProperty.vue'),
        meta: { title: '07ColorMaterialProperty', icon: 'el-icon-s-help' }
      },
      {
        path: '/17cesium06',
        name: '06SampledPositionPropertyApproximation',
        component: () => import('@/views/17cesium属性Property/06SampledPositionPropertyApproximation.vue'),
        meta: { title: '06SampledPositionPropertyApproximation', icon: 'el-icon-s-help' }
      },
      {
        path: '/17cesium05',
        name: '05SampledPositionProperty',
        component: () => import('@/views/17cesium属性Property/05SampledPositionProperty.vue'),
        meta: { title: '05SampledPositionProperty', icon: 'el-icon-s-help' }
      },
      {
        path: '/17cesium04',
        name: '04CompositeProperty',
        component: () => import('@/views/17cesium属性Property/04CompositeProperty.vue'),
        meta: { title: '04CompositeProperty', icon: 'el-icon-s-help' }
      },
      {
        path: '/17cesium03',
        name: '03ConstantProperty',
        component: () => import('@/views/17cesium属性Property/03ConstantProperty.vue'),
        meta: { title: '03ConstantProperty', icon: 'el-icon-s-help' }
      },
      {
        path: '/17cesium02',
        name: '02TimeIntervalCollectionProperty',
        component: () => import('@/views/17cesium属性Property/02TimeIntervalCollectionProperty.vue'),
        meta: { title: '02TimeIntervalCollectionProperty', icon: 'el-icon-s-help' }
      },
      {
        path: '/17cesium01',
        name: '01SampledProperty',
        component: () => import('@/views/17cesium属性Property/01SampledProperty.vue'),
        meta: { title: '01SampledProperty', icon: 'el-icon-s-help' }
      }
    ]
  },
  {
    path: '/abc16',
    component: LayoutIndex,
    redirect: '/16cesium',
    name: '16cesiumClock组件',
    meta: { title: '16cesiumClock组件', icon: 'el-icon-s-help' },
    children: [
      {
        path: '/16cesium',
        name: '05cesiumTimeInterval',
        component: () => import('@/views/16cesium时间/05cesiumTimeInterval.vue'),
        meta: { title: '05cesiumTimeInterval', icon: 'el-icon-s-help' }
      },
      {
        path: '/16cesium04',
        name: '04cesiumTimeInterval',
        component: () => import('@/views/16cesium时间/04cesiumTimeInterval.vue'),
        meta: { title: '04cesiumTimeInterval', icon: 'el-icon-s-help' }
      },
      {
        path: '/16cesium03',
        name: '03cesiumAnimate',
        component: () => import('@/views/16cesium时间/03cesiumAnimate.vue'),
        meta: { title: '03cesiumAnimate', icon: 'el-icon-s-help' }
      },
      {
        path: '/16cesium02',
        name: '02cesiumAnimation',
        component: () => import('@/views/16cesium时间/02cesiumJunianDAte.vue'),
        meta: { title: '02cesiumAnimation', icon: 'el-icon-s-help' }
      },
      {
        path: '/16cesium01',
        name: '01cesiumClock',
        component: () => import('@/views/16cesium时间/01cesiumClock.vue'),
        meta: { title: '01cesiumClock', icon: 'el-icon-s-help' }
      }
    ]
  },
  {
    path: '/abc15',
    component: LayoutIndex,
    redirect: '/15cesium',
    name: '15cesium剖切',
    meta: { title: '15cesium剖切', icon: 'el-icon-s-help' },
    children: [
      {
        path: '/15cesium',
        name: '03cesiumContrastLook',
        component: () => import('@/views/15cesium剖切/03cesiumContrastLook.vue'),
        meta: { title: '03cesiumContrastLook', icon: 'el-icon-s-help' }
      },
      {
        path: '/15cesium02',
        name: '02CesiumTerrainClip',
        component: () => import('@/views/15cesium剖切/02CesiumTerrainClip.vue'),
        meta: { title: '02CesiumTerrainClip', icon: 'el-icon-s-help' }
      },
      {
        path: '/15cesium01',
        name: '01CesiumModelClip',
        component: () => import('@/views/15cesium剖切/01CesiumModelClip.vue'),
        meta: { title: '01CesiumModelClip', icon: 'el-icon-s-help' }
      }
    ]
  },
  {
    path: '/abc14',
    component: LayoutIndex,
    redirect: '/14cesium',
    name: '14鼠标PICKer',
    meta: { title: '14鼠标PICKer', icon: 'el-icon-s-help' },
    children: [
      {
        path: '/14cesium',
        name: '06PickImageLayerFeature',
        component: () => import('@/views/14Cesium拾取Pick/06PickImageLayerFeature.vue'),
        meta: { title: '06PickImageLayerFeature', icon: 'el-icon-s-help' }
      },
      {
        path: '/14cesium05',
        name: '05CesiumGlobePicker',
        component: () => import('@/views/14Cesium拾取Pick/05CesiumGlobePicker.vue'),
        meta: { title: '05CesiumGlobePicker', icon: 'el-icon-s-help' }
      },
      {
        path: '/14cesium04',
        name: '04CesiumEllipsoidPicker',
        component: () => import('@/views/14Cesium拾取Pick/04CesiumEllipsoidPicker.vue'),
        meta: { title: '04CesiumEllipsoidPicker', icon: 'el-icon-s-help' }
      },
      {
        path: '/14cesium03',
        name: '03CesiumDrillPicker',
        component: () => import('@/views/14Cesium拾取Pick/03CesiumDrillPicker.vue'),
        meta: { title: '03CesiumDrillPicker', icon: 'el-icon-s-help' }
      },
      {
        path: '/14cesium02',
        name: '02ScenePickPosition',
        component: () => import('@/views/14Cesium拾取Pick/02ScenePickPosition.vue'),
        meta: { title: '02ScenePickPosition', icon: 'el-icon-s-help' }
      },
      {
        path: '/14cesium01',
        name: '01ScreenPicker',
        component: () => import('@/views/14Cesium拾取Pick/01ScreenPicker.vue'),
        meta: { title: '01ScreenPicker', icon: 'el-icon-s-help' }
      }
    ]
  },
  {
    path: '/abc13',
    component: LayoutIndex,
    redirect: '/13cesium',
    name: '13cesium鼠标事件',
    meta: { title: '13cesium鼠标事件', icon: 'el-icon-s-help' },
    children: [
      {
        path: '/13cesium',
        name: '05ScreenSpaceEventHandler',
        component: () => import('@/views/13Cesium鼠标时间/05ScreenSpaceEventHandler.vue'),
        meta: { title: '05ScreenSpaceEventHandler', icon: 'el-icon-s-help' }
      },
      {
        path: '/13cesium04',
        name: '04ScreenSpaceEventHandler',
        component: () => import('@/views/13Cesium鼠标时间/04ScreenSpaceEventHandler.vue'),
        meta: { title: '04ScreenSpaceEventHandler', icon: 'el-icon-s-help' }
      },
      {
        path: '/13cesium03',
        name: '03ScreenSpaceEventHandler',
        component: () => import('@/views/13Cesium鼠标时间/03ScreenSpaceEventHandler.vue'),
        meta: { title: '03ScreenSpaceEventHandler', icon: 'el-icon-s-help' }
      },
      {
        path: '/13cesium02',
        name: '02ScreenSpaceEventHandler',
        component: () => import('@/views/13Cesium鼠标时间/02ScreenSpaceEventHandler.vue'),
        meta: { title: '02ScreenSpaceEventHandler', icon: 'el-icon-s-help' }
      },
      {
        path: '/13cesium01',
        name: '01ScreenSpaceEventHandler',
        component: () => import('@/views/13Cesium鼠标时间/01ScreenSpaceEventHandler.vue'),
        meta: { title: '01ScreenSpaceEventHandler', icon: 'el-icon-s-help' }
      }
    ]
  },
  {
    path: '/abc12',
    component: LayoutIndex,
    redirect: '/12cesium',
    name: '12矩阵Matrix',
    meta: { title: '12矩阵Matrix', icon: 'el-icon-s-help' },
    children: [
      {
        path: '/12cesium',
        name: '04CesiumModelMatrix',
        component: () => import('@/views/12cesiumMatrix/04CesiumModelMatrix.vue'),
        meta: { title: '04CesiumModelMatrix', icon: 'el-icon-s-help' }
      },
      {
        path: '/12cesium03',
        name: '03CesiumScale',
        component: () => import('@/views/12cesiumMatrix/03CesiumScale.vue'),
        meta: { title: '03CesiumScale', icon: 'el-icon-s-help' }
      },
      {
        path: '/12cesium02',
        name: '02CesiumRotation',
        component: () => import('@/views/12cesiumMatrix/02CesiumRotation.vue'),
        meta: { title: '02CesiumRotation', icon: 'el-icon-s-help' }
      },
      {
        path: '/12cesium01',
        name: '01CesiumTranslation',
        component: () => import('@/views/12cesiumMatrix/01CesiumTranslation.vue'),
        meta: { title: '01CesiumTranslation', icon: 'el-icon-s-help' }
      }
    ]
  },
  {
    path: '/abc11',
    component: LayoutIndex,
    redirect: '/10cesium',
    name: '10Cartesian',
    meta: { title: '10Cartesian', icon: 'el-icon-s-help' },
    children: [
      {
        path: '/10cesium',
        name: '02Cartesian3',
        component: () => import('@/views/10Cesium坐标系/02Cartesian3.vue'),
        meta: { title: '02Cartesian3', icon: 'el-icon-s-help' }
      },
      {
        path: '/10cesium01',
        name: '01Cartesian2',
        component: () => import('@/views/10Cesium坐标系/01Cartesian2.vue'),
        meta: { title: '01Cartesian2', icon: 'el-icon-s-help' }
      }
    ]
  },
  {
    path: '/abc10',
    component: LayoutIndex,
    redirect: '/09cesium',
    name: '09TerrainProvider',
    meta: { title: '09TerrainProvider', icon: 'el-icon-s-help' },
    children: [
      {
        path: '/09cesium',
        name: '04TerrainExaggeration',
        component: () => import('@/views/09地址TerrainProvider/04TerrainExaggeration.vue'),
        meta: { title: '04TerrainExaggeration', icon: 'el-icon-s-help' }
      },
      {
        path: '/09cesium03',
        name: '03ArcgisTerrianProvider',
        component: () => import('@/views/09地址TerrainProvider/03ArcgisTerrianProvider.vue'),
        meta: { title: '03ArcgisTerrianProvider', icon: 'el-icon-s-help' }
      },
      {
        path: '/09cesium02',
        name: '02EllipsoidTerrainProvider',
        component: () => import('@/views/09地址TerrainProvider/02EllipsoidTerrainProvider.vue'),
        meta: { title: '02EllipsoidTerrainProvider', icon: 'el-icon-s-help' }
      },
      {
        path: '/09cesium01',
        name: '01TerrainProvider',
        component: () => import('@/views/09地址TerrainProvider/01TerrainProvider.vue'),
        meta: { title: '01TerrainProvider', icon: 'el-icon-s-help' }
      }
      ]
  },
  {
    path: '/abc009',
    component: LayoutIndex,
    redirect: '/08cesium',
    name: '08ImageProvider',
    meta: { title: '08ImageProvider', icon: 'el-icon-s-help' },
    children: [
      {
        path: '/08cesium',
        name: '10ImageryLayerFeatureInfo',
        component: () => import('@/views/08ImageProvider/10ImageryLayerFeatureInfo.vue'),
        meta: { title: '10ImageryLayerFeatureInfo', icon: 'el-icon-s-help' }
      },
      {
        path: '/08cesium09',
        name: '09ImageryLayerCollection',
        component: () => import('@/views/08ImageProvider/09ImageryLayerCollection.vue'),
        meta: { title: '09ImageryLayerCollection', icon: 'el-icon-s-help' }
      },
      {
        path: '/08cesium08',
        name: '08TileCoordinatesImageryProvider',
        component: () => import('@/views/08ImageProvider/08TileCoordinatesImageryProvider.vue'),
        meta: { title: '08TileCoordinatesImageryProvider', icon: 'el-icon-s-help' }
      },
      {
        path: '/08cesium07',
        name: '07GridImageryProvider',
        component: () => import('@/views/08ImageProvider/07GridImageryProvider.vue'),
        meta: { title: '07GridImageryProvider', icon: 'el-icon-s-help' }
      },
      {
        path: '/08cesium06',
        name: '06SingleTileImageryProvider',
        component: () => import('@/views/08ImageProvider/06SingleTileImageryProvider.vue'),
        meta: { title: '06SingleTileImageryProvider', icon: 'el-icon-s-help' }
      },
      {
        path: '/08cesium05',
        name: '05WebMapTileServiceImageryProvider',
        component: () => import('@/views/08ImageProvider/05WebMapTileServiceImageryProvider.vue'),
        meta: { title: '05WebMapTileServiceImageryProvider', icon: 'el-icon-s-help' }
      },
      {
        path: '/08cesium04',
        name: '04UrlTemplateImageryProvider',
        component: () => import('@/views/08ImageProvider/04UrlTemplateImageryProvider.vue'),
        meta: { title: '04UrlTemplateImageryProvider', icon: 'el-icon-s-help' }
      },
      {
        path: '/08cesium03',
        name: '03GoogleEarthEnterpriseImageryProvider',
        component: () => import('@/views/08ImageProvider/03GoogleEarthEnterpriseImageryProvider.vue'),
        meta: { title: '03GoogleEarthEnterpriseImageryProvider', icon: 'el-icon-s-help' }
      },
      {
        path: '/08cesium02',
        name: '02OpenStreetMapImageProvider',
        component: () => import('@/views/08ImageProvider/02OpenStreetMapImageProvider.vue'),
        meta: { title: '02OpenStreetMapImageProvider', icon: 'el-icon-s-help' }
      },
      {
        path: '/08cesium01',
        name: '01AirGisMapServerImageProvider',
        component: () => import('@/views/08ImageProvider/01AirGisMapServerImageProvider.vue'),
        meta: { title: '01AirGisMapServerImageProvider', icon: 'el-icon-s-help' }
      }
    ]
  },
  {
    path: '/abc008',
    component: LayoutIndex,
    redirect: '/07cesium',
    name: '07CesiumData',
    meta: { title: '07cesium3Dtails', icon: 'el-icon-s-help' },
    children: [
      {
        path: '/07cesium',
        name: '08CustomFramentShader',
        component: () => import('@/views/07cesium3Dtiles/08CustomFramentShader.vue'),
        meta: { title: '08CustomFramentShader', icon: 'el-icon-s-help' }
      },
      {
        path: '/07cesium07',
        name: '07ContralLook',
        component: () => import('@/views/07cesium3Dtiles/07ContralLook.vue'),
        meta: { title: '07ContralLook', icon: 'el-icon-s-help' }
      },
      {
        path: '/07cesium06',
        name: '06ViewerCesium3DTilesInspectorMixin',
        component: () => import('@/views/07cesium3Dtiles/06ViewerCesium3DTilesInspectorMixin.vue'),
        meta: { title: '06ViewerCesium3DTilesInspectorMixin', icon: 'el-icon-s-help' }
      },
      {
        path: '/07cesium05',
        name: '05Cesium3DTileFeature',
        component: () => import('@/views/07cesium3Dtiles/05Cesium3DTileFeature.vue'),
        meta: { title: '05Cesium3DTileFeature', icon: 'el-icon-s-help' }
      },
      {
        path: '/07cesium04',
        name: '04Cesium3DTileStyle',
        component: () => import('@/views/07cesium3Dtiles/04Cesium3DTileStyle.vue'),
        meta: { title: '04Cesium3DTileStyle', icon: 'el-icon-s-help' }
      },
      {
        path: '/07cesium03',
        name: '03Cesium3Dtile',
        component: () => import('@/views/07cesium3Dtiles/03Cesium3Dtile.vue'),
        meta: { title: '03Cesium3Dtile', icon: 'el-icon-s-help' }
      },
      {
        path: '/07cesium02',
        name: '02CesiumVideo',
        component: () => import('@/views/07cesium3Dtiles/02CesiumVideo.vue'),
        meta: { title: '02CesiumVideo', icon: 'el-icon-s-help' }
      },
      {
        path: '/07cesium01',
        name: '01Cesium3DTiles',
        component: () => import('@/views/07cesium3Dtiles/01Cesium3DTiles.vue'),
        meta: { title: '01Cesium3DTiles', icon: 'el-icon-s-help' }
      }
    ]
  },
  {
    path: '/abc07',
    component: LayoutIndex,
    redirect: '/06cesium',
    name: '06CesiumData',
    meta: { title: '06DataSource', icon: 'el-icon-s-help' },
    children: [
      {
        path: '/06cesium',
        name: '07ViewerDragDropMixin',
        component: () => import('@/views/06cesiumDataSource/07ViewerDragDropMixin.vue'),
        meta: { title: '07ViewerDragDropMixin', icon: 'el-icon-s-help' }
      },
      {
        path: '/06cesium06',
        name: '06GpxDataSource',
        component: () => import('@/views/06cesiumDataSource/06GpxDataSource.vue'),
        meta: { title: '06GpxDataSource', icon: 'el-icon-s-help' }
      },
      {
        path: '/06cesium05',
        name: '05DataSourceCollection',
        component: () => import('@/views/06cesiumDataSource/05DataSourceCollection.vue'),
        meta: { title: '05DataSourceCollection', icon: 'el-icon-s-help' }
      },
      {
        path: '/06cesium04',
        name: '04CustomDataSource',
        component: () => import('@/views/06cesiumDataSource/04CustomDataSource.vue'),
        meta: { title: '04CustomDataSource', icon: 'el-icon-s-help' }
      },
      {
        path: '/06cesium03',
        name: '03KmlDataSource',
        component: () => import('@/views/06cesiumDataSource/03KmlDataSource.vue'),
        meta: { title: '03KmlDataSource', icon: 'el-icon-s-help' }
      },
      {
        path: '/06cesium02',
        name: '02GeojsonDataSource',
        component: () => import('@/views/06cesiumDataSource/02GeojsonDataSource.vue'),
        meta: { title: '02GeojsonDataSource', icon: 'el-icon-s-help' }
      },
      {
        path: '/06cesium01',
        name: '01Czml',
        component: () => import('@/views/06cesiumDataSource/01Czml.vue'),
        meta: { title: '01Czml', icon: 'el-icon-s-help' }
      }
      ]
  },
  {
    path: '/abc06',
    component: LayoutIndex,
    redirect: '/05cesium',
    name: '05Cesium外观',
    meta: { title: '05Cesium外观', icon: 'el-icon-s-help' },
    children: [
      {
        path: '/05cesium',
        name: '06CustomAppearance',
        component: () => import('@/views/05Cesium外观Appearance/06CustomAppearance.vue'),
        meta: { title: '06CustomAppearance', icon: 'el-icon-s-help' }
      },
      {
        path: '/05cesium05',
        name: '05MaterialAppearance',
        component: () => import('@/views/05Cesium外观Appearance/05MaterialAppearance.vue'),
        meta: { title: '05MaterialAppearance', icon: 'el-icon-s-help' }
      },
      {
        path: '/05cesium04',
        name: '04PolylineColorAppearance',
        component: () => import('@/views/05Cesium外观Appearance/04PolylineColorAppearance.vue'),
        meta: { title: '04PolylineColorAppearance', icon: 'el-icon-s-help' }
      },
      {
        path: '/05cesium03',
        name: '03PolylineMaterialAppearance',
        component: () => import('@/views/05Cesium外观Appearance/03PolylineMaterialAppearance.vue'),
        meta: { title: '03PolylineMaterialAppearance', icon: 'el-icon-s-help' }
      },
      {
        path: '/05cesium02',
        name: '02PerInstanceColorAppearance',
        component: () => import('@/views/05Cesium外观Appearance/02PerInstanceColorAppearance.vue'),
        meta: { title: '02PerInstanceColorAppearance', icon: 'el-icon-s-help' }
      },
      {
        path: '/05cesium01',
        name: '01EllipoidSurfaceAppearance',
        component: () => import('@/views/05Cesium外观Appearance/01EllipoidSurfaceAppearance.vue'),
        meta: { title: '01EllipoidSurfaceAppearance', icon: 'el-icon-s-help' }
      }
      ]
  },
  {
    path: '/abc05',
    component: LayoutIndex,
    redirect: '/04cesium',
    name: 'Interaction04',
    meta: { title: '04Cesium图元Primitive', icon: 'el-icon-s-help' },
    children: [
      {
        path: '/04cesium',
        name: '28CustomGeometry',
        component: () => import('@/views/04Cesium图元Primitive/28CustomGeometry.vue'),
        meta: { title: '28CustomGeometry', icon: 'el-icon-s-help' }
      },
      {
        path: '/04cesium27',
        name: '27PrimitiveCollection',
        component: () => import('@/views/04Cesium图元Primitive/27PrimitiveCollection.vue'),
        meta: { title: '27PrimitiveCollection', icon: 'el-icon-s-help' }
      },
      {
        path: '/04cesium26',
        name: '26Primitive与Entity效率对比',
        component: () => import('@/views/04Cesium图元Primitive/26Primitive与Entity效率对比.vue'),
        meta: { title: '26Primitive与Entity效率对比', icon: 'el-icon-s-help' }
      },
      {
        path: '/04cesium25',
        name: '25GroundPolylineGeometry',
        component: () => import('@/views/04Cesium图元Primitive/25GroundPolylineGeometry.vue'),
        meta: { title: '25GroundPolylineGeometry', icon: 'el-icon-s-help' }
      },
      {
        path: '/04cesium24',
        name: '24GroundPrimitive',
        component: () => import('@/views/04Cesium图元Primitive/24GroundPrimitive.vue'),
        meta: { title: '24GroundPrimitive', icon: 'el-icon-s-help' }
      },
      {
        path: '/04cesium23',
        name: '23WallOutlineGeometry',
        component: () => import('@/views/04Cesium图元Primitive/23WallOutlineGeometry.vue'),
        meta: { title: '23WallOutlineGeometry', icon: 'el-icon-s-help' }
      },
      {
        path: '/04cesium22',
        name: '22WallGeometry',
        component: () => import('@/views/04Cesium图元Primitive/22WallGeometry.vue'),
        meta: { title: '22WallGeometry', icon: 'el-icon-s-help' }
      },
      {
        path: '/04cesium21',
        name: '21SphereOutlineGeometry',
        component: () => import('@/views/04Cesium图元Primitive/21SphereOutlineGeometry.vue'),
        meta: { title: '21SphereOutlineGeometry', icon: 'el-icon-s-help' }
      },
      {
        path: '/04cesium20',
        name: '20SphereGeometry',
        component: () => import('@/views/04Cesium图元Primitive/20SphereGeometry.vue'),
        meta: { title: '20SphereGeometry', icon: 'el-icon-s-help' }
      },
      {
        path: '/04cesium19',
        name: '19PolylineVolumeGeometry',
        component: () => import('@/views/04Cesium图元Primitive/19PolylineVolumeGeometry.vue'),
        meta: { title: '19PolylineVolumeGeometry', icon: 'el-icon-s-help' }
      },
      {
        path: '/04cesium18',
        name: '18SimplePolylineGeometry',
        component: () => import('@/views/04Cesium图元Primitive/18SimplePolylineGeometry.vue'),
        meta: { title: '18SimplePolylineGeometry', icon: 'el-icon-s-help' }
      },
      {
        path: '/04cesium17',
        name: '17PolylineGeometry',
        component: () => import('@/views/04Cesium图元Primitive/17PolylineGeometry.vue'),
        meta: { title: '17PolylineGeometry', icon: 'el-icon-s-help' }
      },
      {
        path: '/04cesium16',
        name: '16PolygonOutlineGeometry',
        component: () => import('@/views/04Cesium图元Primitive/16PolygonOutlineGeometry.vue'),
        meta: { title: '16PolygonOutlineGeometry', icon: 'el-icon-s-help' }
      },
      {
        path: '/04cesium15',
        name: '15PolygonGeometry',
        component: () => import('@/views/04Cesium图元Primitive/15PolygonGeometry.vue'),
        meta: { title: '15PolygonGeometry', icon: 'el-icon-s-help' }
      },
      {
        path: '/04cesium14',
        name: '14RectangleOutlineGeometry',
        component: () => import('@/views/04Cesium图元Primitive/14RectangleOutlineGeometry.vue'),
        meta: { title: '14RectangleOutlineGeometry', icon: 'el-icon-s-help' }
      },
      {
        path: '/04cesium13',
        name: '13RectangleGeometry',
        component: () => import('@/views/04Cesium图元Primitive/13RectangleGeometry.vue'),
        meta: { title: '13RectangleGeometry', icon: 'el-icon-s-help' }
      },
      {
        path: '/04cesium12',
        name: '12EllipsesoidOutlineGeometry',
        component: () => import('@/views/04Cesium图元Primitive/12EllipsesoidOutlineGeometry.vue'),
        meta: { title: '12EllipsesoidOutlineGeometry', icon: 'el-icon-s-help' }
      },
      {
        path: '/04cesium11',
        name: '11EllipsesoidGeometry',
        component: () => import('@/views/04Cesium图元Primitive/11EllipsesoidGeometry.vue'),
        meta: { title: '11EllipsesoidGeometry', icon: 'el-icon-s-help' }
      },
      {
        path: '/04cesium10',
        name: '10EllipseOutlineGeometry',
        component: () => import('@/views/04Cesium图元Primitive/10EllipseOutlineGeometry.vue'),
        meta: { title: '10EllipseOutlineGeometry', icon: 'el-icon-s-help' }
      },
      {
        path: '/04cesium09',
        name: '09EllipseGeometry',
        component: () => import('@/views/04Cesium图元Primitive/09EllipseGeometry.vue'),
        meta: { title: '09EllipseGeometry', icon: 'el-icon-s-help' }
      },
      {
        path: '/04cesium08',
        name: '08CylinderOutlineGeometry',
        component: () => import('@/views/04Cesium图元Primitive/08CylinderOutlineGeometry.vue'),
        meta: { title: '08CylinderOutlineGeometry', icon: 'el-icon-s-help' }
      },
      {
        path: '/04cesium07',
        name: '07CylinderGeometry',
        component: () => import('@/views/04Cesium图元Primitive/07CylinderGeometry.vue'),
        meta: { title: '07CylinderGeometry', icon: 'el-icon-s-help' }
      },
      {
        path: '/04cesium06',
        name: '06CorridorOutlineGeometry',
        component: () => import('@/views/04Cesium图元Primitive/06CorridorOutlineGeometry.vue'),
        meta: { title: '06CorridorOutlineGeometry', icon: 'el-icon-s-help' }
      },
      {
        path: '/04cesium05',
        name: '05CorridorGeometry',
        component: () => import('@/views/04Cesium图元Primitive/05CorridorGeometry.vue'),
        meta: { title: '05CorridorGeometry', icon: 'el-icon-s-help' }
      },
      {
        path: '/04cesium04',
        name: '04CircleOutlineGeometry',
        component: () => import('@/views/04Cesium图元Primitive/04CircleOutlineGeometry.vue'),
        meta: { title: '04CircleOutlineGeometry', icon: 'el-icon-s-help' }
      },
      {
        path: '/04cesium03',
        name: '03CircleGeometry',
        component: () => import('@/views/04Cesium图元Primitive/03CircleGeometry.vue'),
        meta: { title: '03CircleGeometry', icon: 'el-icon-s-help' }
      },
      {
        path: '/04cesium02',
        name: '02BoxOutlineGeometry',
        component: () => import('@/views/04Cesium图元Primitive/02BoxOutlineGeometry.vue'),
        meta: { title: '02BoxOutlineGeometry', icon: 'el-icon-s-help' }
      },
      {
        path: '/04cesium01',
        name: '01BoxGeometry',
        component: () => import('@/views/04Cesium图元Primitive/01BoxGeometry.vue'),
        meta: { title: '01BoxGeometry', icon: 'el-icon-s-help' }
      }
    ]
  },
  {
    path: '/abc04',
    component: LayoutIndex,
    redirect: '/03cesium',
    name: 'Interaction03',
    meta: { title: '03cesium材质', icon: 'el-icon-s-help' },
    children: [
      {
        path: '/03cesium',
        name: '10CustomMaterial',
        component: () => import('@/views/03cesium材质/10CustomMaterial.vue'),
        meta: { title: '10CustomMaterial', icon: 'el-icon-s-help' }
      },
      {
        path: '/03cesium09',
        name: '09PolylineDashMaterial',
        component: () => import('@/views/03cesium材质/09PolylineDashMaterial.vue'),
        meta: { title: '09PolylineDashMaterial', icon: 'el-icon-s-help' }
      },
      {
        path: '/03cesium08',
        name: '08PolylineArrowMaterial',
        component: () => import('@/views/03cesium材质/08PolylineArrowMaterial.vue'),
        meta: { title: '08PolylineArrowMaterial', icon: 'el-icon-s-help' }
      },
      {
        path: '/03cesium07',
        name: '07PolylineOutlineMaterial',
        component: () => import('@/views/03cesium材质/07PolylineOutlineMaterial.vue'),
        meta: { title: '07PolylineOutlineMaterial', icon: 'el-icon-s-help' }
      },
      {
        path: '/03cesium06',
        name: '06PolylineGlowMaterial',
        component: () => import('@/views/03cesium材质/06PolylineGlowMaterial.vue'),
        meta: { title: '06PolylineGlowMaterial', icon: 'el-icon-s-help' }
      },
      {
        path: '/03cesium05',
        name: '05GuidMaterial',
        component: () => import('@/views/03cesium材质/05GuidMaterial.vue'),
        meta: { title: '05GuidMaterial', icon: 'el-icon-s-help' }
      },
      {
        path: '/03cesium04',
        name: '04StripeMaterial',
        component: () => import('@/views/03cesium材质/04StripeMaterial.vue'),
        meta: { title: '04StripeMaterial', icon: 'el-icon-s-help' }
      },
      {
        path: '/03cesium03',
        name: '03CheckerBoardMaterial',
        component: () => import('@/views/03cesium材质/03CheckerBoardMaterial.vue'),
        meta: { title: '03CheckerBoardMaterial', icon: 'el-icon-s-help' }
      },
      {
        path: '/03cesium02',
        name: '02ImageMaterial',
        component: () => import('@/views/03cesium材质/02ImageMaterial.vue'),
        meta: { title: '02ImageMaterial', icon: 'el-icon-s-help' }
      },
      {
        path: '/03cesium01',
        name: '01ColorMetarial',
        component: () => import('@/views/03cesium材质/01ColorMetarial.vue'),
        meta: { title: '01ColorMetarial', icon: 'el-icon-s-help' }
      }
    ]
  },
  {
    path: '/abc03',
    component: LayoutIndex,
    redirect: '/02Cesium',
    name: 'Interaction',
    meta: { title: '02Cesium实体', icon: 'el-icon-s-help' },
    children: [
      {
        path: '/02Cesium',
        name: '19EntityView',
        component: () => import('@/views/02Cesium实体/19EntityView.vue'),
        meta: { title: '19EntityView', icon: 'el-icon-s-help' }
      },
      {
        path: '/02Cesium18',
        name: '18EntityCluster',
        component: () => import('@/views/02Cesium实体/18EntityCluster.vue'),
        meta: { title: '18EntityCluster', icon: 'el-icon-s-help' }
      },
      {
        path: '/02Cesium17',
        name: '17EntityCollectionOperate',
        component: () => import('@/views/02Cesium实体/17EntityCollectionOperate.vue'),
        meta: { title: '17EntityCollectionOperate', icon: 'el-icon-s-help' }
      },
      {
        path: '/02Cesium16',
        name: '16Wall',
        component: () => import('@/views/02Cesium实体/16Wall.vue'),
        meta: { title: '16Wall', icon: 'el-icon-s-help' }
      },
      {
        path: '/02Cesium15',
        name: '15Rectangle',
        component: () => import('@/views/02Cesium实体/15Rectangle.vue'),
        meta: { title: '15Rectangle', icon: 'el-icon-s-help' }
      },
      {
        path: '/02Cesium14',
        name: '14PolylineVolume',
        component: () => import('@/views/02Cesium实体/14PolylineVolume.vue'),
        meta: { title: '14PolylineVolume', icon: 'el-icon-s-help' }
      },
      {
        path: '/02Cesium13',
        name: '13Polyline',
        component: () => import('@/views/02Cesium实体/13Polyline.vue'),
        meta: { title: '13Polyline', icon: 'el-icon-s-help' }
      },
      {
        path: '/02Cesium12',
        name: '12Polygon',
        component: () => import('@/views/02Cesium实体/12Polygon.vue'),
        meta: { title: '12Polygon', icon: 'el-icon-s-help' }
      },
      {
        path: '/02Cesium11',
        name: '11Plane',
        component: () => import('@/views/02Cesium实体/11Plane.vue'),
        meta: { title: '11Plane', icon: 'el-icon-s-help' }
      },
      {
        path: '/02Cesium10',
        name: '10Path',
        component: () => import('@/views/02Cesium实体/10Path.vue'),
        meta: { title: '10Path', icon: 'el-icon-s-help' }
      },
      {
        path: '/02Cesium09',
        name: '09Model',
        component: () => import('@/views/02Cesium实体/09Model.vue'),
        meta: { title: '09Model', icon: 'el-icon-s-help' }
      },
      {
        path: '/02Cesium08',
        name: '08Label',
        component: () => import('@/views/02Cesium实体/08Label.vue'),
        meta: { title: '08Label', icon: 'el-icon-s-help' }
      },
      {
        path: '/02Cesium07',
        name: '07Ellipsoid07',
        component: () => import('@/views/02Cesium实体/07Ellipsoid.vue'),
        meta: { title: '07Ellipsoid', icon: 'el-icon-s-help' }
      },
      {
        path: '/02Cesium06',
        name: '06Ellipse',
        component: () => import('@/views/02Cesium实体/06Ellipse.vue'),
        meta: { title: '06Ellipse', icon: 'el-icon-s-help' }
      },
      {
        path: '/02Cesium05',
        name: '05Cylinder',
        component: () => import('@/views/02Cesium实体/05Cylinder.vue'),
        meta: { title: '05Cylinder', icon: 'el-icon-s-help' }
      },
      {
        path: '/02Cesium04',
        name: '04Corridor',
        component: () => import('@/views/02Cesium实体/04Corridor.vue'),
        meta: { title: '04Corridor', icon: 'el-icon-s-help' }
      },
      {
        path: '/02Cesium03',
        name: '03Box',
        component: () => import('@/views/02Cesium实体/03Box.vue'),
        meta: { title: '03Box', icon: 'el-icon-s-help' }
      },
      {
        path: '/02Cesium02',
        name: '02BillBoard',
        component: () => import('@/views/02Cesium实体/02BillBoard.vue'),
        meta: { title: '02BillBoard', icon: 'el-icon-s-help' }
      },
      {
        path: '/02Cesium01',
        name: '01Point',
        component: () => import('@/views/02Cesium实体/01Point.vue'),
        meta: { title: '01Point', icon: 'el-icon-s-help' }
      }
    ]
  },
  {
    path: '/abc02',
    component: LayoutIndex,
    redirect: '/Apage01',
    name: 'Interaction02',
    meta: { title: 'cesium01', icon: 'el-icon-s-help' },
    children: [
      {
        path: '/Apage01',
        name: '06ViewPerformanceWatchdog',
        component: () => import('@/views/Apage/06ViewPerformanceWatchdog.vue'),
        meta: { title: '06ViewPerformanceWatchdog', icon: 'el-icon-s-help' }
      },
      {
        path: '/Apage0105',
        name: '05ViewportInspector',
        component: () => import('@/views/Apage/05ViewportInspector.vue'),
        meta: { title: '05ViewportInspector', icon: 'el-icon-s-help' }
      },
      {
        path: '/Apage0104',
        name: '04ViewPortQuid',
        component: () => import('@/views/Apage/04ViewPortQuid.vue'),
        meta: { title: '04ViewPortQuid', icon: 'el-icon-s-help' }
      },
      {
        path: '/Apage0103',
        name: '03ViewerResolution',
        component: () => import('@/views/Apage/03ViewerResolution.vue'),
        meta: { title: '03ViewerResolution', icon: 'el-icon-s-help' }
      },
      {
        path: '/Apage0101',
        name: 'first01',
        component: () => import('@/views/Apage/AIndex01.vue'),
        meta: { title: 'first01', icon: 'el-icon-s-help' }
      },
      {
        path: '/Apage0202',
        name: 'first02',
        component: () => import('@/views/Apage/AIndex02.vue'),
        meta: { title: 'first02', icon: 'el-icon-s-help' }
      }
    ]
  },
  {
    path: '/Bpage',
    component: LayoutIndex,
    redirect: '/Bpage01',
    name: 'Interaction01',
    meta: { title: 'cesium02', icon: 'el-icon-s-help' },
    children: [
      {
        path: '/Bpage01',
        name: 'second01',
        component: () => import('@/views/Bpage/BIndex01.vue'),
        meta: { title: 'second01', icon: 'el-icon-s-help' }
      },
      {
        path: '/Bpage02',
        name: 'second02',
        component: () => import('@/views/Bpage/BIndex02.vue'),
        meta: { title: 'second02', icon: 'el-icon-s-help' }
      }
    ]
  }
]

const router = new VueRouter({
  routes
})

export default router
